package vista.ventanaTarea;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import modelo.tareas.Tarea;

/**
 * @author Cristian
 * 
 * */
public class SeleccionarTareaPredecesora implements ActionListener {

	//Variable *********************************************************** //
	private AgregarTareaAlProyecto ventana;
	
	//Constructor *********************************************************** //
	public SeleccionarTareaPredecesora(AgregarTareaAlProyecto ventana){
		this.setVentana(ventana);
	}
	
	/**
	 * @param tareaABuscar
	 * @
	 * Busca en la lista de tareas, el nombre de la tarea pasada por parametro y la devuelve, para poder
	 * utilizarla cuando creo una tarea con  predecesor
	 */
	public Tarea buscarTareaPorNombre (String tareaABuscar){
	 Tarea tareaADevolver = null;
		for (Tarea tarea: this.ventana.getProyectoSistema().getTareas()){
			if (!tarea.getNombre().equalsIgnoreCase(tareaABuscar)){
				tareaADevolver = tarea; 
			}
		} 
		return tareaADevolver; 
	}
	

	/**
	 * Elige de un JComboBox a la tarea predecesora, entre las tareas que estan cargadas al sistema.
	 * Si se vuelve a elegir, se carga la ultima seleccionada. 
	 * */
	public void actionPerformed(ActionEvent e) {
		String tareaString = (String) this.ventana.getPredecesor().getSelectedItem();
		Tarea tarea = buscarTareaPorNombre(tareaString);
		this.ventana.setTareaPredecesora(tarea);
	}


	//GET&SET     *********************************************************** //
	public void setVentana(AgregarTareaAlProyecto ventana) {
		this.ventana = ventana;
	}


	public AgregarTareaAlProyecto getVentana() {
		return ventana;
	}

}
